package com.honeyms.project.blog.blogcontent.mapper;

import java.util.List;
import com.honeyms.project.blog.blogcontent.domain.BlogContent;

/**
 * 帖子内容Mapper接口
 * 
 * @author honeyms
 * @date 2020-10-12
 */
public interface BlogContentMapper 
{
    /**
     * 查询帖子内容
     * 
     * @param contentId 帖子内容ID
     * @return 帖子内容
     */
    public BlogContent selectBlogContentById(Long contentId);

    /**
     * 查询帖子内容列表
     * 
     * @param blogContent 帖子内容
     * @return 帖子内容集合
     */
    public List<BlogContent> selectBlogContentList(BlogContent blogContent);
    
    /**
     * 查询关注帖子内容列表
     * 
     * @param blogContent 帖子内容
     * @return 关注帖子内容集合
     */
    public List<BlogContent> selectBlogContentListByFollow(String[] contentIds);
    
    /**
     * 随机帖子内容列表
     * 
     * @param blogContent 帖子内容
     * @return 随机帖子内容集合
     */
    public List<BlogContent> selectBlogContentListByRand(BlogContent blogContent);
    
    /**
     * 查询帖子内容列表
     * 
     * @param blogContent 帖子内容
     * @return 查询帖子内容集合
     */
    public List<BlogContent> selectBlogContent(BlogContent blogContent);
    
    /**
     * 查询猜你喜欢的帖子
     * 
     * @param blogContent 帖子内容
     * @return 查询猜你喜欢的帖子
     */
    public List<BlogContent> guessYouLike(Long userId);
    
    /**
     * 统计某天发帖量
     * 
     * @param days 某天
     * @return 统计某天发帖量
     */
    public int selectCounte(Long days);
    
    /**
     * 统计某天内发帖量
     * 
     * @param days 某天
     * @return 统计某天内发帖量
     */
    public int selectCountd(Long days);

    /**
     * 新增帖子内容
     * 
     * @param blogContent 帖子内容
     * @return 结果
     */
    public int insertBlogContent(BlogContent blogContent);

    /**
     * 修改帖子内容
     * 
     * @param blogContent 帖子内容
     * @return 结果
     */
    public int updateBlogContent(BlogContent blogContent);

    /**
     * 删除帖子内容
     * 
     * @param contentId 帖子内容ID
     * @return 结果
     */
    public int deleteBlogContentById(Long contentId);

    /**
     * 批量删除帖子内容
     * 
     * @param contentIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteBlogContentByIds(String[] contentIds);
}
